#ifndef COORDINATE_H
#define COORDINATE_H

#include <istream>
#include <cmath>

struct Coordinate
{
  double x, y, z;
  void loadAttributes(std::istream &inData);
  void normalize();
  double dot() const ;
  double dot(const Coordinate &b) const ;
  double distance(const Coordinate &b) const;
  double magnitude() const;
  const Coordinate operator*(const double &x) const;
  const Coordinate operator+(const Coordinate &b) const;
  const Coordinate operator-(const Coordinate &b) const;
};

#endif
